package com.ltkj.ticket.mapper;

import com.ltkj.ticket.domain.TicVenuesProgramme;
import com.ltkj.ticket.domain.TicVenuesProgrammePeriod;

import java.util.List;

/**
 * 场馆方案Mapper接口
 * 
 * @author ruoyi
 * @date 2023-09-05
 */
public interface TicVenuesProgrammeMapper 
{
    /**
     * 查询场馆方案
     * 
     * @param venuesProgrammeId 场馆方案主键
     * @return 场馆方案
     */
    public TicVenuesProgramme selectTicVenuesProgrammeByVenuesProgrammeId(Long venuesProgrammeId);

    /**
     * 查询场馆方案列表
     * 
     * @param ticVenuesProgramme 场馆方案
     * @return 场馆方案集合
     */
    public List<TicVenuesProgramme> selectTicVenuesProgrammeList(TicVenuesProgramme ticVenuesProgramme);

    /**
     * 新增场馆方案
     * 
     * @param ticVenuesProgramme 场馆方案
     * @return 结果
     */
    public int insertTicVenuesProgramme(TicVenuesProgramme ticVenuesProgramme);

    /**
     * 修改场馆方案
     * 
     * @param ticVenuesProgramme 场馆方案
     * @return 结果
     */
    public int updateTicVenuesProgramme(TicVenuesProgramme ticVenuesProgramme);

    /**
     * 删除场馆方案
     * 
     * @param venuesProgrammeId 场馆方案主键
     * @return 结果
     */
    public int deleteTicVenuesProgrammeByVenuesProgrammeId(Long venuesProgrammeId);

    /**
     * 批量删除场馆方案
     * 
     * @param venuesProgrammeIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteTicVenuesProgrammeByVenuesProgrammeIds(Long[] venuesProgrammeIds);

    /**
     * 批量删除方案时间段
     * 
     * @param venuesProgrammeIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteTicVenuesProgrammePeriodByVenuesProgrammeIds(Long[] venuesProgrammeIds);
    
    /**
     * 批量新增方案时间段
     * 
     * @param ticVenuesProgrammePeriodList 方案时间段列表
     * @return 结果
     */
    public int batchTicVenuesProgrammePeriod(List<TicVenuesProgrammePeriod> ticVenuesProgrammePeriodList);
    

    /**
     * 通过场馆方案主键删除方案时间段信息
     * 
     * @param venuesProgrammeId 场馆方案ID
     * @return 结果
     */
    public int deleteTicVenuesProgrammePeriodByVenuesProgrammeId(Long venuesProgrammeId);
}
